"""
目的  爬取悠久小说的个人书架的数据    有多少本书
cookie
post
session

再爬取个人主页书架的过程中
                        <span class="le_r le_r_m pl_20">有效期：</span>
						  <select name="usecookie" class="select">
						  <option value="0">浏览器进程</option>
						  <option value="86400">保存一天</option>
						  <option value="2592000">保存一月</option>
						  <option value="315360000">保存一年</option>
						  出现这种
就是没有登录
"""
import requests
# 含有我的书架内容的url
url="http://www.ujxsw.com/modules/article/bookcase.php"

# 构建请求头
headers={
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.82 Safari/537.36",
    "Cookie": "Hm_lvt_ffafa5ae2f1ca7e65cb521c271c680c5=1648040063; PHPSESSID=b4jhl2d91n9h7eaacbtkeo89h5; username=User; Hm_lpvt_ffafa5ae2f1ca7e65cb521c271c680c5=1648040179"
}
# 发送请求
response=requests.get(url=url,headers=headers)

print(response.content.decode())

"""
cookie  饼干 介于服务端与客户端之间连接的令牌   pass
如何生成的    
第一次客户端和服务端建立连接以后 》（登录）》服务端 会返回给我们对应的一个唯一的字段（cookie）
介于服务端与客户端之间连接的令牌  是放在浏览器的   
所以在浏览器二次对服务端数据资源进行访问的时候    会自动携带服务端给的cookie发送请求  
服务端接收到使它给用户的cookie 那就返回对应的 数据    

我们爬虫要如何获得cookie发送请求 ？
看操作  
在network对应的数据包中   requests headers里面找 cookie字段 
如何构建   放在headers（字典类型）参数里面  长度是不能确认的 

重点 Cookie: username=User; _identity-frontend=cc1a841f928968bde711b9e7570fd78cdf65d8759e9ee8137c01be8aaf58e6cfa%3A2%3A%7Bi%3A0%3Bs%3A18%3A%22_identity-frontend%22%3Bi%3A1%3Bs%3A18%3A%22%5B13131%2C%22%22%2C2592000%5D%22%3B%7D; Hm_lvt_ffafa5ae2f1ca7e65cb521c271c680c5=1648031166,1648039156; PHPSESSID=vvcfeq19qg9gg0qkkefkrmhn85; Hm_lpvt_ffafa5ae2f1ca7e65cb521c271c680c5=1648039293 
注意 有可能是每一次请求是不同的cookie
注意不同的cookie对应的是不同的数据 

cookie是 存储你身份的字段  （危险）
但是 就有一个缺点 
cookie有时效性 （可能过一段时间就会过期）意味着不能整成使用cookie进行资源访问 

网站不同，cookie也不同

不同的cookie不能用域不同的网页
肯定查不到
不同服务器给的钥匙不同怎么开同一个门


Alt+D 换行  sesting --搜索 wrap -- 设置快捷键

#因为cookie有时效性 所以不能保证每次请求 成功 
有一个解决方案 

通过requests 库里面的 一个类session 去实例化一个对象session2 （之前进行了确认用户身份的操作 即去发送和服务端连接的请求  获取cookie（post方法 进行发送的 ） ）  》以后直接对资源地址进行访问 
url="http://www.ujxsw.com/modules/article/bookcase.php"    不用加cookie 
（至此解决了cookie时效性的缺点 ）

登录基本都是post请求  tips 

流程是先
1学会post获取cookie  
2在学session 发送http请求 
"""










